home *** CD-ROM | disk | FTP | other *** search
/ BBS Toolkit / BBS Toolkit.iso / qbbs / qbbs266.zip / STRUCT.266 < prev   
Text File  |  1990-11-02  |  12KB  |  324 lines

  1.  
  2. (****************************************************************************)
  3. (*         Structures document for QuickBBS version 2.66                    *)
  4. (*         Copyright 1990, Steve Gabrilowitz and Richard Creighton.         *)
  5. (*         All Rights Reserved.                                             *)
  6. (****************************************************************************)
  7.  
  8. Type
  9.   FlagType = Array[1..4] of Byte;
  10.  
  11.   UserRecord = Record
  12.                  Name:               String[35];
  13.                  City:               String[25];
  14.                  Pwd:                String[15];
  15.                  DataPhone,
  16.                  HomePhone:          String[12];
  17.                  LastTime:           String[5];
  18.                  LastDate:           String[8];
  19.                  Attrib:             Byte;
  20.                  Flags:              FlagType;
  21.                  Credit,
  22.                  Pending,
  23.                  TimesPosted,
  24.                  HighMsgRead,
  25.                  SecLvl,
  26.                  Times,
  27.                  Ups,
  28.                  Downs,
  29.                  UpK,
  30.                  DownK,
  31.                  TodayK,
  32.                  Elapsed,
  33.                  Len:                Integer;
  34.                  CombinedPtr:        Word; (* Record number in COMBINED.BBS *)
  35.                  Age:                Byte; (* Not yet implemented *)
  36.                  ExtraSpace:         Array[1..5] of Byte;
  37.                End;
  38.  
  39. (*  Attrib:
  40.  
  41.       Bit 0: Deleted
  42.       Bit 1: Screen Clear Codes
  43.       Bit 2: More Prompt
  44.       Bit 3: ANSI
  45.       Bit 4: No-Kill
  46.       Bit 5: Ignore Download Hours
  47.       Bit 6: ANSI Full Screen Editor
  48.       Bit 7: [ Reserved ]
  49.  
  50. *)
  51.  
  52. { Nodelist Records *************************************************** }
  53.  
  54.    NodeIdxRecord = Record
  55.                      Zone,
  56.                      Net,
  57.                      Node:      Integer;
  58.                      NodeType:  Byte;
  59.                    End;
  60.  
  61.    NodelistRecord = Record
  62.                       NodeType:  Byte;
  63.                       Zone,
  64.                       Net,
  65.                       Node:      Integer;
  66.                       Name:      String[20];
  67.                       City:      String[40];
  68.                       Phone:     String[40];
  69.                       Password:  String[8];
  70.                       Flags:     Integer;
  71.                       BaudRate:  Integer;
  72.                       Cost:      Integer;
  73.                     End;
  74.  
  75. { Message Records ******************************************************}
  76.  
  77.       CombSelectType = Array[1..200] of Boolean; (* for COMBINED.BBS *)
  78.  
  79.       InfoRecord = Record
  80.                      LowMsg:      Integer;     { Lowest Message in File }
  81.                      HighMsg:     Integer;     { Highest Message in File }
  82.  
  83.                      TotalActive: Integer;     { Total Active Messages }
  84.  
  85.                      ActiveMsgs:  Array[1..200] of Integer;
  86.                    End;
  87.  
  88.       IdxRecord = Record
  89.                     MsgNum:       Integer;
  90.                     Board:        Byte;
  91.                   End;
  92.  
  93.           HdrRecord = Record
  94.                         MsgNum,
  95.                         ReplyTo,
  96.                         SeeAlsoNum,
  97.                         TRead:              Integer;
  98.                         StartRec:           Word;
  99.                         NumRecs,
  100.                         DestNet,
  101.                         DestNode,
  102.                         OrigNet,
  103.                         OrigNode:           Integer;
  104.                         DestZone,
  105.                         OrigZone:           Byte;
  106.                         Cost:               Integer;
  107.                         MsgAttr,
  108.                         NetAttr,
  109.                         Board:              Byte;
  110.                         PostTime:           String[5];
  111.                         PostDate:           String[8];
  112.                         WhoTo,
  113.                         WhoFrom:            String[35];
  114.                         Subj:               String[72];
  115.                       End;
  116.  
  117.  
  118. (* Msg Attributes:
  119.  
  120.       Bit 0: Deleted
  121.       Bit 1: Unmoved Outgoing Net Message
  122.       Bit 2: Is a Net Mail Message
  123.       Bit 3: Private
  124.       Bit 4: Received
  125.       Bit 5: Unmoved Outgoing Echo Message
  126.       Bit 6: Local Bit
  127.       Bit 7: [ Reserved ]
  128.  
  129.    Net Attributes:
  130.  
  131.       Bit 0: Kill Message after it's been sent
  132.       Bit 1: Sent OK
  133.       Bit 2: File(s) Attached
  134.       Bit 3: Crash Priority
  135.       Bit 4: Request Receipt
  136.       Bit 5: Audit Request
  137.       Bit 6: Is a Return Receipt
  138.       Bit 7: [ Reserved ]
  139.  
  140. *)
  141.  
  142. { Other Stuff *********************************************************** }
  143.  
  144.   SysInfoRecord = Record
  145.                     CallCount:    LongInt;
  146.                     LastCaller:   String[35];
  147.                     ExtraSpace:   Array[1..128] of Byte;
  148.                   End;
  149.  
  150.   TimeLogRecord = Record
  151.                     StartDate:        String[8];
  152.                     BusyPerHour:      Array[0..23] of Integer;
  153.                     BusyPerDay:       Array[0..6] of Integer;
  154.                   End;
  155.  
  156.      MenuRecord = Record
  157.                     Typ:      Byte;
  158.                     Sec:      Integer;
  159.                     Flags:    FlagType;
  160.                     Str:      String[75];
  161.                     Key:      Char;
  162.                     Data:     String[80];
  163.                     Fg,
  164.                     Bg:       Byte;
  165.                   End;
  166.  
  167. { Configuration Information ********************************************** }
  168.  
  169.       EventRecord = Record
  170.                       Status:       Byte; { 0=Deleted 1=Enabled 2=Disabled }
  171.                       RunTime:      String[5];
  172.                       ErrorLevel:   Byte;
  173.                       Days:         Byte;
  174.                       Forced:       Boolean;
  175.                       LastTimeRun:  String[8];
  176.                     End;
  177.  
  178.       BoardRecord = Record
  179.                       Name:         String[16];
  180.                       Typ:          Byte; { 0=Standard 1=Net 3=Echo }
  181.                       Kinds:        Byte; { 0=Both 1=Pvt 2=Pub 3=Read-Only }
  182.                       Combined:     Boolean;
  183.                       Aliases:      Boolean;
  184.  
  185.                       ReadSecLvl:   Integer;
  186.                       ReadFlags:    FlagType;
  187.  
  188.                       WriteSecLvl:  Integer;
  189.                       WriteFlags:   FlagType;
  190.  
  191.                       SysopSecLvl:  Integer;
  192.                       SysopFlags:   FlagType;
  193.                     End;
  194.  
  195.      ConfigRecord = Record
  196.                       (*  Modem Parameters  *)
  197.                       CommPort:      Integer;
  198.                       InitBaud,
  199.                       InitTimes,
  200.                       AnswerWait:    Integer;
  201.                       ModemInitStr,
  202.                       ModemBusyStr:  String[70];
  203.                       ModemInitResp,
  204.                       ModemBusyResp,
  205.                       Resp300,
  206.                       Resp1200,
  207.                       Resp2400:      String[40];
  208.  
  209.                       (*  System Paths  *)
  210.                       MenuPath,
  211.                       TextPath,
  212.                       NetPath:      String[66];
  213.  
  214.                       (*  Restriction Parameters  *)
  215.                       MinBaud,
  216.                       GraphicsBaud,
  217.                       XferBaud:      Integer;
  218.                       LowBaudStart,
  219.                       LowBaudEnd,
  220.                       DownloadStart,
  221.                       DownloadEnd,
  222.                       PagingStart,
  223.                       PagingEnd:     String[5];
  224.  
  225.                       (*  Matrix Information  *)
  226.                       MatrixZone,
  227.                       MatrixNet,
  228.                       MatrixNode:    Integer;
  229.                       AkaNet,
  230.                       AkaNode:       Array[1..5] of Integer;
  231.                       NetMailBoard:  Integer;
  232.  
  233.                       (*  Default Information for New Users  *)
  234.                       DefaultSec:                Integer;
  235.                       DefaultCredit:             Integer;
  236.                       DefaultFlags:              FlagType;
  237.  
  238.                       (*  Sysop Security Levels  *)
  239.                       EditorCmdStr:    String[70];
  240.                       OriginLine:      String[60];
  241.                       SysopName:       String[35];
  242.                       AutoLogonChar,
  243.                       FastLogon,
  244.                       ScreenBlanking,
  245.                       UseLastRead,
  246.                       MonoMode,
  247.                       DirectWrite,
  248.                       SnowCheck,
  249.                       NetEchoExit,
  250.                       OneWordNames,
  251.                       CheckMail,
  252.                       AskHomePhone,
  253.                       AskDataPhone,
  254.                       GraphicsAvail:   Boolean;
  255.                       InactiveTimeOut: Integer;
  256.                       LogonTime:       Integer;
  257.                       DefFgColor:      Integer;
  258.                       DefBgColor:      Integer;
  259.                       PasswordTries:   Integer;
  260.                       MaxPageTimes:    Integer;
  261.                       PageBellLen:     Integer;
  262.  
  263.                       Use_Xmodem:      Boolean;
  264.                       Use_Xmodem1k:    Boolean;
  265.                       Use_Ymodem:      Boolean;
  266.                       Use_YmodemG:     Boolean;
  267.                       Use_Sealink:     Boolean;     { Changed for 2.04 }
  268.                       Use_Zmodem:      Boolean;     { "              " }
  269.                       Inp_Fields:      Boolean;     { "              " }
  270.                       QuoteStr:        String[3];
  271.                       UploadCredit:    Integer;
  272.                       LoadingMessage:  String[70];
  273.                       SelectionPrompt: String[70];
  274.  
  275.                       VersionID:       Word;
  276.  
  277.                       { Added for 2.04: }
  278.  
  279.                       Resp4800,
  280.                       Resp9600:        String[40];   
  281.  
  282.                       AkaZone:         Array[1..5] of Integer;
  283.  
  284.                       { Added for 2.60: }
  285.  
  286.                       MatrixPoint:     Integer;
  287.                       AkaPoint:        Array[1..5] of Integer;
  288.  
  289.                       UseAka:          Array[1..200] of Byte;
  290.                       AskAge:          Boolean; (* Not yet Implemented *)
  291.                       SystemName:      String[40];
  292.                       RegKey:          Longint;
  293.  
  294.                       ExtraSpace:      Array[1..5] of Byte;
  295.  
  296.                       EventRec:        Array[1..30] of EventRecord;
  297.                       BoardRec:        Array[1..200] of BoardRecord;
  298.                     End;
  299.  
  300.   GosubDataType = Array[1..20] of String[8];
  301.  
  302.   ExitRecord = Record
  303.                  BaudRate:        Integer;
  304.                  SysInfo:         SysInfoRecord;
  305.                  TimeLogInfo:     TimeLogRecord;
  306.                  UserInfo:        UserRecord;
  307.                  EventInfo:       EventRecord;
  308.                  NetMailEntered:  Boolean;
  309.                  EchoMailEntered: Boolean;
  310.                  LoginTime:       String[5];
  311.                  LoginDate:       String[8];
  312.                  TmLimit:         Integer;
  313.                  LoginSec:        LongInt;
  314.                  Credit:          LongInt;
  315.                  UserRecNum:      Integer;
  316.                  ReadThru:        Integer;
  317.                  PageTimes:       Integer;
  318.                  DownLimit:       Integer;
  319.                  WantChat:        Boolean;
  320.                  GosubLevel:      Byte;
  321.                  GosubData:       GosubDataType;
  322.                  Menu:            String[8];
  323.                End;
  324.